Process modeling systems have been used in process industries such as refining and pharmaceutical manufacturing for a variety of purposes. Process engineers use these systems to design and evaluate new processes, redesign, retrofit and/or optimize existing process plants. For example, process modeling system may be used in different application modes such as simulation, data reconciliation, and optimization. Computer simulations of processes involving the movement, separation, and/or transformation of materials commonly employ a visual representation of the process, in whole or in part.
This visualization is better suited to human understanding of the process being simulated than the raw underlying data. Computer graphics rendering of this visualization is generally termed a flowsheet model or simply a “flowsheet” and roughly corresponds to a Process Flow Diagram (PFD), depending on the level of detail required for the process model. This form of flowsheet visualization is a nearly universal feature of process simulation software. The flowsheet once assembled/built typically includes a plurality of individual graphical elements (or objects) that may be represented as icons and lines which correspond to process semantics and the relationships of the process objects. Process elements may be either process or non-process elements. A process element is an item of operating hardware, such as a pump, mixer, reactor or heat exchanger. A non-process element is something other than an item of operating hardware, typically a passive device such as a flow meter, thermocouple or pressure gauge. For instance, line direction in a flowsheet can be represented with an arrow which can indicate the fluid flow direction in a process.
Software implementations of a flowsheet typically present graphical ‘handles’ on the objects where lines can connect to them. To create these connections it is often necessary to drag a line from a connection handle on one object and drop onto a connection handle of a different object. While the connection operation is simple to perform, the operation can quickly become repetitious and tedious when creating a complex flowsheet.
Furthermore, deleting a line requires different user actions (e.g. select-delete) as compared to creating a line (e.g. select drag-drop), and changing a line requires both user actions combined (e.g., select select-delete followed by drag-drop). While these conventions are common and therefore generally easy to learn, they are time consuming when making frequent changes, such as early in a process design when the topology of the process is being assembled and is prone to frequent changes.
The traditional technique of dragging connections lines between icons on a computer-rendered graphical flowsheet is intuitive but complex for all but the simplest action of connecting a single line to a free (e.g., unconnected) handle on a second icon. Consider the scenario of inserting a new object into the middle of an existing line. Using the traditional technique of dragging connections lines requires selecting the object and deleting it, then adding the new object to the flowsheet, followed by dragging and dropping two new connections from the original object to the new object. The single conceptual action of insertion entails four discrete user actions. The necessary effort required to insert a new object into the middle of an existing line is compounded when the object being inserted mid-connection has multiple input and/or output connections. Furthermore, the user temporarily loses the visual context of the original process line once it is deleted, potentially leading to confusion when eventually reconnecting to the original process icons.